(1) Field of the Invention
The present invention relates to a recording and reproduction apparatus which accumulates contents and reproduces the accumulated contents. In particular, the present invention relates to an exclusive trick play control system for use with the recording and reproduction apparatus for trick play processing.
(2) Description of the Related Art
Various contents are included in a broadcast wave sent from a broadcasting station. Aside from video and audio used in a normal television program, there are cases where data is included in the contents. There are several methods for sending the data, which can be roughly divided into a method of sending the data chronologically and a method of repeatedly sending the data per set interval. In the former method of sending the data chronologically, for example, data that continues of the course of time is sent in sequential order. This method is suitable for sending large amounts of data over a long period of time, but there is a drawback in that data which could not be received due to timing of the send cannot be received again. On the other hand, in the latter method of repeatedly sending the data at a set interval, the same data is repeatedly sent any number of times during a fixed period. This method has an advantage in that during the period when the same data is being sent, it is acceptable to receive any one of the repeatedly-sent pieces of data, and thus the timing of receiving is not limited.
For instance, data broadcast, represented by BML, and file sending through DSMCC data carousel are examples of this method. It is unknown, particularly in broadcast, when a recipient will select a channel and commence reception. In the method of sending the data chronologically, when the reception is commenced after the timing of the send and acquisition of the data fails, the data cannot be re-acquired. Therefore, when sending data such as an application program along with video and audio in the broadcast wave, the method of repeatedly sending the data per set interval is favorable.
At present, specifications for receiving a broadcast wave that includes video, audio, and an application program and executing the application program in synchronization with video and audio, as in the above method, have been developed, and are in operation. It is possible to receive the sent application program, load the application program in a terminal, and implement various additional functions by executing the loaded application program, rather than simply viewing the ordinary video and audio. This method for sending the application program and loading the application program in the terminal is also called “downloading”. For example, a specification called Digital Video Broadcasting—Multimedia Home Platform (DVB-MHP) ETSI ES 201 812 V1.1.1 (2003-12) has been developed in Europe, and operations according to this specification have already commenced.
In addition, OCAP 1.0 (Open Cable Application Platform OC-SP-OCAP1.0-114-050119) specification, which provides the same specification in the cable broadcast environment in the United States, is being developed in the United States, and actually operations are set to commence in 2005. In these specifications, the application is written in the Java language. In the terminal, various types of Application Programming Interface (API) for tuning and graphics displaying are prepared so that the Java application can control those functions by calling the API.
In addition, in North America, the OCAP-DVR specification (OC-SP-OCAP-DVR-I01-040524), which is aimed at adding a function for recording and reproducing the contents in the OCAP specification, is being developed. This is for recording the content to be broadcast (such as video, audio, and an application) and further reproducing the recorded content as well as the content to be broadcast.
Moreover, with OCAP-DVR, trick play of contents is realized by recording broadcast contents to a high-speed random-accessible storage medium, such as a hard disk, a semiconductor memory, and the like. Here, the trick play refers to functions for reproducing the contents at an arbitrary speed, from an arbitrary position, and so on, such as fast-forward, rewind, slow-motion, pause, and skip. With OCAP-DVR, the application taken into the terminal from the broadcast wave can control the recording and trick play of contents by defining the API on the terminal for the recording and trick play. In particular, a Java Media Framework (JMF) is adopted for the trick play. The JMF is an API which is designed in Java language and used for controlling the reproduction of video and audio. The application can perform trick play by sending various instructions to a class called Player. Also, a technique for realizing the trick play is described in the Patent Reference “EP 0 692 123”. Specifically, it is a method of easily manufacturing a reproduction apparatus (mainly software) which reproduces video and audio (contents). The method can easily realize a consistency between an original time axis of the content and a time axis actually used by the reproduction apparatus, by physically and conceptually integrating the concepts of time.
In the case where plural applications are executed at the same time, if each of the applications instructs, on the same content, to perform different trick play, a difference is caused between an ideal reproduction state intended by each application and an actual reproduction state.
This problem is obvious in the case where there are an application which is linked with a certain program and an application which is not linked with the program. For example, the application linked with the program knows optimum instruction timing of trick play of the program. While the application instructs to perform trick play at the optimum instruction timing, if the application which is not linked with the program sends a different instruction for trick play, an optimum trick play result cannot be obtained. In the case where the plural applications separately instructs, on the same video and audio, to perform trick play using the known technique represented by the JMF, a reproduction state unexpected by the application is created since each of the applications cannot prevent trick play instructions sent from other applications. As the result, unexpected operations and malfunctions of the applications are caused so that the optimum trick play result cannot be obtained.